package com.heima.article.controller.v1;


import com.heima.article.service.ApArticleService;
import com.heima.common.dtos.ResponseResult;
import com.heima.model.article.dto.ArticleHomeDto;
import com.heima.model.article.pojo.ApArticle;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.List;

import static com.heima.common.constants.ArticleConstants.LOADTYPE_LOAD_MORE;
import static com.heima.common.constants.ArticleConstants.LOADTYPE_LOAD_NEW;

@RestController
@RequestMapping("/api/v1/article")
public class ArticleHomeController {

    @Resource
    private ApArticleService apArticleService;

    /**
     * 第一次加载  ，根据service 层次 走的时候 loadMore。
     * @param dto   前端传来的参数。
     * @return   返回 查找的文章列表信息。
     */
    @PostMapping("/load")
    public ResponseResult<List<ApArticle>> load(@RequestBody ArticleHomeDto dto) {
        return this.apArticleService.load(LOADTYPE_LOAD_MORE,dto);
    }

    @PostMapping("/loadmore")
    public ResponseResult<List<ApArticle>> loadMore(@RequestBody ArticleHomeDto dto) {
        return this.apArticleService.load(LOADTYPE_LOAD_MORE,dto);
    }

    @PostMapping("/loadnew")
    public ResponseResult<List<ApArticle>> loadNew(@RequestBody ArticleHomeDto dto) {
        return this.apArticleService.load(LOADTYPE_LOAD_NEW,dto);
    }
}
